package com.jxufe.hadoop.flowCount;

import java.util.HashMap;

import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Partitioner;

public class ProvincePartitioner extends Partitioner<Text, FlowBean>{
	
	
	private static HashMap<String, Integer> proviceDisc= new HashMap<String, Integer>();
	static {
		proviceDisc.put("131", 0);
		proviceDisc.put("132", 1);
		proviceDisc.put("133", 2);
		proviceDisc.put("134", 3);
		proviceDisc.put("135", 4);
	}

	@Override
	public int getPartition(Text key, FlowBean value, int numPartitions) {
		String prefix = key.toString().substring(0,3);
		Integer proviceId = proviceDisc.get(prefix);
		return proviceId ==null ? 5 : proviceId;
	}

}
